astro-notion-blog

Description is here. The icon, the title, the description can be modified in Notion.

Resume_en

I am a software engineer based in Guangzhou, China 🌊 with five plus years of experience in the software industry.

For the past three years, my focus has been on back-end development using Golang, and I have two years of experience with Python. Additionally, I am skilled in Rust.

☎️ Contact

📧 Email address alal1995@hotmail.com

🔗 Github ray1888 (https://github.com/ray1888)

☎️ +86 15622321518


👩🏻‍💻 Work Experience

Backend Engineer

ByteDance Inc, Guangdong, Guangzhou – (Mar 2021 - Dec 2022)

  • Lark People Initialization System
    📌Project Introduction

    Lark people initialization system is designed to reduce the deployment time of Lark People, helping customers to quickly access and provide a system for opening new demo tenants for pre-sales.

    Job Responsibilities
    • Design and implement solutions from scratch, including testing. The code volume should be around 15,000 lines and the system-wide test coverage rate should be at least 70% Within a month.
    • Coordinate with more than 7 upstream and downstream stakeholders to integrate technical solutions and systems.
    • Responsible for coordinating schedules with upstream and downstream teams and managing deployment schedules.
    Achievement.
    • Successfully helped the team reduce the deployment time of the Lark People Standard version from 1 week to 1 day. Also supported the simultaneous opening of multiple tenants, thereby improving the efficiency of the solution team.
    • After completing development, we supported multiple customer deployments, receiving praise from both users and internal business stakeholders.
  • Lark Performance system
    📌Project Introduction

    Lark Performance is a performance management SaaS system for Lark tenants.

    Job Responsibilities

    📌 Lark Performance Report Optimization Project

    • This role involves dividing scenarios and conducting load testing to establish a data foundation for later optimization.
    • Review the logic for data synchronization and reconciliation to ensure that the reported data after ETL meets expectations.

    📌 Lark Performance Snapshot Sync

    • Designed and developed from scratch, this solution supports multiple tenants' requirements. It has been successfully launched on Li Auto Inc and other tenants with no bugs.

    Achievement
    • The optimization project for the Lark performance report modified the original architecture, resulting in a performance improvement of up to 5 times in most scenarios. As a result, the team earned a team spot bonus.
    • The snapshot requirement has been effectively supporting the business for a year and a half without any changes.
  • Bytedance's Level and Salary Adjustment System
    📌Project Introduction

    This project is a system that supports the internal promotion and salary adjustment functions of ByteDance company. It assists managers in effectively managing promotions and salary adjustments by inputting salary, human resources, and performance information.

    As a legacy system, the current team inherited a codebase that had already undergone maintenance by three previous teams. The codebase contains 400,000 lines (excluding tests), resulting in high levels of business complexity and historical burden.

    📌Job Responsibilities
    • Addressing the Legacy System
      • Output business process diagrams by user role and take over three core modules (promotion, salary adjustment, and report) within one month, and be responsible for on-call and development of subsequent modules.
      • To improve system stability, use the Lidar tool, which is a ByteDance internal toolkit for Golang. This tool can help locate and fix OOM (Out of Memory) issues in historical code.
      • Participate in system rehearsals and generate data to help the team eliminate system failures.
      • Write stability contingency plans and conduct rehearsals for corresponding system modules such as promotion, salary adjustment, and report. This will provide operational support for rapid fault recovery.
      • Add QPS monitoring for each scenario to provide scenario-specific QPS data for load testing.
    • Business Requirements and Support
      1.After taking over the system, develop 5 requirements with P0-complexity and 3 requirements with P1-complexity, without any bugs.
      2. Provide support to on-call users within the company by resolving more than 10 on-call issues.
      3. Support the Business Intelligence (BI) team by extracting data, creating a general interface solution, writing standard operating procedures (SOPs) for BI business access data, and successfully integrating with two different BI teams to acquire data across different dimensions.
    • Performance Optimization
      1. The issue of deadlocks in the historical code has been resolved, resulting in a 50% increase in the speed of synchronizing upstream performance data for the system. The time it takes to synchronize data for 13,000 people has been reduced from one and a half hours to 40 minutes.
      2. As the person responsible for load testing the system, my duties included:
        • Sorting scenarios
        • Distinguishing between core links and scenarios
        • Constructing data
        • Conducting multiple rounds of data load testing
        • Optimizing the system

        These efforts ensured that the system met the disaster recovery requirements of handling three times the normal traffic within two weeks.

    📌Achievement
    • Successfully and stably took over the system for adjusting levels and salaries. Additionally, provided modification suggestions to improve the development of related requirements for team members.
    • Conducted a system assessment and provided an accurate capacity estimate. Successfully supported three performance seasons, which spanned 1.5 years.
    • The system is stable, and the number of fatal errors has been reduced from the previous team's handover. They reported 3 P0 errors and 2 P1 errors, but we now have 0 fatal errors.
📌Technology Stack
  • Golang
  • Kubernetes
  • Redis, ByteHtap, Mysql
  • Git
  • ByteCI
Backend Engineer

Spark Education Inc, Guangdong, Guangzhou – (Oct 2019- Jan 2021)

  • Spark Education Online Operation and Online Classroom System
    📌Project Introduction

    This project supports Spark Online's one-on-one online live broadcast business, including scheduling, orders, live broadcasting, and operation and growth. Multiple platforms are used to develop and support the business.

    📌Job Responsibilities
    • Business Development
      • Responsible for developing and designing operating system functions, including signing, refunding, payment, growth model, multi-province data permission function, and WeChat public account.
      • Develop the business system for the online course system.
    • Team Tool Development
      • Develop a command-line tool for data migration and migration record auditing.
      • Establish code branch standards using the Git Flow methodology and create an online operation SOP within the team to standardize the code deployment process.
      • Combine the logging system with the traceability function to improve the team's debugging efficiency.
      • Implementing static code analysis can reduce the possibility of code errors.
      • Integrate Go Module for better management of Go-related dependencies.
    • Performance Optimization
      • Optimized slow SQL queries for complex interfaces in the business system by refactoring some logic. This reduced the response time for some slow interfaces from over 1 second to 100ms, improving performance by 70%.
      • Conducted performance testing and scaling, which doubled the system capacity for multiple modules within two weeks. This enabled the system to support the company's rapid business growth at the start of the pandemic.
    📌Achievement
    • At the start of the pandemic, the system was expanded, enabling it to support the company's rapid business growth during the outbreak.
    • The team's online bug rate decreased from 5 per version to 2 per version, resulting in a 60% decrease in severe bugs.
    • The Migration Command Line tool improved deployment and operation efficiency, reducing the data migration time for deployment versions from over 30 minutes to approximately 6 minutes for the latest version.
    • The team's user support increased significantly, from 200 one-on-one lesson sessions in 2019 to a peak of 700 daily lesson sessions in mid-2020.
    📌 Technology Stack
    • Golang
    • Posgresql,Redis
    • Jenkins
    • AliCloud Suite includes Ali Kubernetes Service, Ali Monitor & Logging System, and Object Storage.

Backend Engineer

SandStone Inc, Guangdong, Shenzhen – (Aug 2018 - Jul 2019)

📌Project Introduction

The goal of this project is to offer a user-friendly operations and management platform for Ceph storage.

📌Job Responsibilities
  • Business Requirements and Oncall
    • Monitor the performance of Ceph storage, which provides multiple protocols (iSCSI, NFS, CIFS).
    • Develop easy-to-use functionality for Cephx, allowing users to encrypt Ceph storage with just one click.
    • Create a batch installation tool.
    • Resolve issues related to different software versions deployed by on-call colleagues in the private cloud.
  • Performance improvement
    • Rewrite the disk management functionality to increase initialization speed by 50%.
📌Achievement
  • Refactored the disk management feature to hide storage media (HDD, SSD, NVME SSD) from the user layer, making it more user-friendly.
  • Successfully supported pre-sales and solution colleagues in deploying to various public and private clouds.
📌Technology Stack
  • Python,Shell
  • RabbitMQ,MariaDB
  • graphite
  • AliCloud Suite(Ali Kubernetes Service,Ali Monitor & logging system, objectStorage)
Backend Engineer

Useease Inc, Guangdong, Guangzhou – (Jul 2017- May 2018 )

📌Project Introduction

This project aims to provide comprehensive monitoring. It offers monitoring at the infrastructure level, application level, and distributed tracing level. Additionally, this project uses machine learning techniques to adjust alarm thresholds and reduce false positives.

📌Job Responsibilities
  • Business-related development
    • I developed an AI training workflow for the project using sklearn algorithms. This workflow includes data slicing, model training, model authentication, and model output.
    • I implemented a core module for alarms, which includes configuration and parsing of alarm rules, alarm notification, and alarm calculation.
    • Supported the open sourcing of the company's project by writing relevant technical documentation and packaging it using Docker.
  • Algorithm-related.
    • Participating in the first AIOPs competition with algorithm colleagues, supporting their engineering implementation, and improving the execution performance of the trained models.
📌Achievement
  • Successfully participated in the first AIOPs competition hosted by Tsinghua University and achieved a ranking of 10th place out of approximately 100 teams in the first round.
  • The system successfully supported signal monitoring for China Telecom Guangdong Research Institute.
📌Technology Stack
  • Python,Shell
  • OpenTSDB,Redis,Mysql,MongoDB


🛠 Skills

💻 Technology
Program Language

Rust ⭐️⭐️⭐️

Golang ⭐️⭐️⭐️⭐️⭐️

Shell ⭐️⭐️⭐️

Python ⭐️⭐️⭐️

Container

Kubernetes⭐️⭐️⭐️⭐️

Docker ⭐️⭐️⭐️⭐️

CI & Code manage

Jenkins ⭐️⭐️⭐️

Git ⭐️⭐️⭐️⭐️⭐️

Monitor System

Grafana ⭐️⭐️⭐️⭐️

OpenTSDB ⭐️⭐️⭐️⭐️

Prometheus ⭐️⭐️⭐️

SoftSkill

Technical writing ⭐️⭐️⭐️


🗣 Languages
Mandarin & Cantonese 🇨🇳

Native speaker

English 🇺🇸

Proficient speaker


📜 Articles and Talks


📚 Education

Bachelor's Degree in Internet of Thinthe g (GDUT, Guangdong University of Technology)

2013-2017

Guangdong - China